package ru.averta.notes.service.tag;

import ru.averta.notes.domain.Site;
import ru.averta.notes.domain.Tag;
import ru.averta.notes.domain.TagConnector;

import java.util.Collection;
import java.util.List;

public interface TagManager {

    public List<Tag> getTagsForObject(Site object);

    public TagManager addTag(Site object, String tag);

    public TagManager removeTag(Site object, String tag);

    public TagManager removeTag(Site object, Tag tag);

    public boolean hasTag(Site object, String tag);

    public Collection<Tag> findTitleByTitleAndCUser(String title);

    public Collection<TagConnector> findTagConnectorsByCUser();

    public Collection<String> findTagsByCUser();

}
